/*
   Copyright (C) 2007 Yen-Ju Chen <yjchenx gmail>

   This application is free software; you can redistribute it and/or 
   modify it under the terms of the MIT license. See COPYING.

*/

#import <AppKit/AppKit.h>
#import <OrganizeKit/OrganizeKit.h>
#import "KRWindowControllerProtocol.h"
#import "KRItemViewControllerProtocol.h"

@class KRToolbar;
@class KRCollectionView;

@interface KRWindowController: NSObject <KRWindowControllerProtocol>
{
	NSWindow *window;
	NSScrollView *collectionScrollView;
	NSOutlineView *collectionView;
	NSView *browserView;
	NSView *itemView;
	NSView *contentView;
	KRToolbar *toolbar;
	NSSplitView *leftSplitView;
	NSSplitView *rightSplitView;

	BOOL isShowingCollectionView;

	NSArray *itemViewControllers;
	NSObject <KRItemViewControllerProtocol> *currentItemViewController;

	NSMutableArray *items; /* To be displayed on item view */
	NSPredicate *predicate;
	NSObject <KRFactoryProtocol> *currentFactory;
	OKGroup *rootGroup;

	/* Cache */
	NSNotificationCenter *nc;
	NSObject <KRDataSourceProtocol> *dataSource;
}

@end

